A Portable and Efficient Thread Library for OpenMP
نویسنده
چکیده
The design of a portable, yet efficient, thread library, called Balder Threads, is discussed in this paper. The library is used within Balder, a run-time library for OpenMP 2.0. The thread library is evaluated using the EPCC micro-benchmarks and measuring the overheads for the entire Balder OpenMP run-time library. The overheads, using Balder Threads, are found to be an order of an magnitude smaller than when using POSIX primitives. The overheads achieved are comparable to those of a commercial system from Intel.
منابع مشابه
The OMPi OpenMP/C Compiler
We have designed and implemented OMPi, a portable compiler for OpenMP/C. This paper presents an overview of our compiler and its supporting libraries. OMPi is a C-to-C translator that takes C code with OpenMP directives and produces equivalent multithreaded C code ready for execution on a multiprocessor. Our compiler is the only publicly available one that adheres to version 2.0 of the standard...
متن کاملPractical Compiler Techniques on Efficient Multithreaded Code Generation for OpenMP Programs
State-of-the-art multiprocessor systems pose several difficulties: (i) the user has to parallelize the existing serial code; (ii) explicitly threaded programs using a thread library are not portable; (iii) writing efficient multi-threaded programs requires intimate knowledge of machine’s architecture and micro-architecture. Thus, well-tuned parallelizing compilers are in high demand to leverage...
متن کاملPortable Compilers for OpenMP
The recent parallel language standard for shared memory multiprocessor (SMP) machines, OpenMP, promises a simple and portable interface for programmers who wish to exploit parallelism explicitly. In this paper, we present our effort to develop portable compilers for the OpenMP parallel directive language. Our compiler consists of two parts. Part one is an OpenMP parallelizer, which transforms s...
متن کاملAn Implementation and Evaluation of Thread Subteam for OpenMP Extensions
OpenMP provides a portable programming interface on shared memory multiprocessors (SMPs). The set of features in the current OpenMP specification provides essential functionality that was selected mostly from existing shared-memory parallel application programming interfaces (APIs). Although this interface has proven successful for small SMPs, it requires greater flexibility in light of the ste...
متن کاملPortable Support and Exploitation of Nested Parallelism in OpenMP
In this paper, we present an alternative implementation of the NANOS OpenMP runtime library (NthLib) that targets portability and efficient support of multiple levels of parallelism. We have implemented the runtime libraries of available opensource OpenMP compilers on top of NthLib, reducing thus their overheads and providing them with inherent support for nested parallelism. In addition, we pr...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2004